package com.itany.corejava.code08_常用类.内部类;

/**
 * @author 石小俊
 * @date 2023年05月04日 17:04
 */
public class Test04_匿名内部类 {
    public static void main(String[] args) {
        // 定义实现类之后进行实例化调用
        SomeInterface someClass = new SomeClass();
        someClass.doSome();

        // 使用匿名内部类进行实现
        SomeInterface someInterface = new SomeInterface() {
            @Override
            public void doSome() {
                System.out.println("这是通过匿名内部类实现的接口的方法");
            }
        };
        someInterface.doSome();

        OtherClass otherClass = new OtherClass() {
            @Override
            public void doSome() {
                System.out.println("这是通过匿名内部类实现的抽象类的方法");
            }
        };
        otherClass.doSome();

    }
}
interface SomeInterface{
    void doSome();
}
class SomeClass implements SomeInterface{

    @Override
    public void doSome() {
        System.out.println("这是需要实现的方法");
    }
}
abstract class OtherClass{
    public abstract void doSome();
}